{% extends 'generic/object.html' %}
{% load helpers %}
{% load plugins %}

{% block breadcrumbs %}
  {{ block.super }}
  <li class="breadcrumb-item">
    <a href="{% url 'dcim:device_consoleports' pk=object.device.pk %}">{{ object.device }}</a>
  </li>
{% endblock %}

{% block content %}
    <div class="row">
        <div class="col col-md-6">
            <div class="card">
                <h5 class="card-header">
                    Console Port
                </h5>
                <div class="card-body">
                    <table class="table table-hover attr-table">
                        <tr>
                            <th scope="row">Device</th>
                            <td>
                                <a href="{{ object.device.get_absolute_url }}">{{ object.device }}</a>
                            </td>
                        </tr>
                        <tr>
                            <th scope="row">Name</th>
                            <td>{{ object.name }}</td>
                        </tr>
                        <tr>
                            <th scope="row">Label</th>
                            <td>{{ object.label|placeholder }}</td>
                        </tr>
                        <tr>
                            <th scope="row">Type</th>
                            <td>{{ object.get_type_display }}</td>
                        </tr>
                        <tr>
                            <th scope="row">Speed</th>
                            <td>{{ object.get_speed_display }}</td>
                        </tr>
                        <tr>
                            <th scope="row">Description</th>
                            <td>{{ object.description|placeholder }}</td>
                        </tr>
                    </table>
                </div>
            </div>
            {% include 'inc/panels/custom_fields.html' %}
            {% include 'inc/panels/tags.html' %}
            {% plugin_left_page object %}
        </div>
        <div class="col col-md-6">
            <div class="card">
                <h5 class="card-header">
                    Connection
                </h5>
                <div class="card-body">
                    {% if object.mark_connected %}
                    <span class="text-success"><i class="mdi mdi-check-bold"></i></span> Marked as connected
                    {% elif object.cable %}
                    <table class="table table-hover attr-table">
                        <tr>
                            <th scope="row">Cable</th>
                            <td>
                                <a href="{{ object.cable.get_absolute_url }}">{{ object.cable }}</a>
                                <a href="{% url 'dcim:consoleport_trace' pk=object.pk %}" class="btn btn-primary btn-sm lh-1" title="Trace">
                                    <i class="mdi mdi-transit-connection-variant" aria-hidden="true"></i>
                                </a>
                            </td>
                        </tr>
                        {% if object.connected_endpoint %}
                            <tr>
                                <th scope="row">Device</th>
                                <td>
                                    <a href="{{ object.connected_endpoint.device.get_absolute_url }}">{{ object.connected_endpoint.device }}</a>
                                </td>
                            </tr>
                            <tr>
                                <th scope="row">Name</th>
                                <td>
                                    <a href="{{ object.connected_endpoint.get_absolute_url }}">{{ object.connected_endpoint.name }}</a>
                                </td>
                            </tr>
                            <tr>
                                <th scope="row">Type</th>
                                <td>{{ object.connected_endpoint.get_type_display|placeholder }}</td>
                            </tr>
                            <tr>
                                <th scope="row">Description</th>
                                <td>{{ object.connected_endpoint.description|placeholder }}</td>
                            </tr>
                            <tr>
                                <th scope="row">Path Status</th>
                                <td>
                                    {% if object.path.is_active %}
                                        <span class="badge bg-success">Reachable</span>
                                    {% else %}
                                        <span class="badge bg-danger">Not Reachable</span>
                                    {% endif %}
                                </td>
                            </tr>
                        {% endif %}
                    </table>
                {% else %}
                    <div class="text-muted">
                        Not Connected
                        {% if perms.dcim.add_cable %}
                            <div class="dropdown float-end">
                                <button type="button" class="btn btn-primary btn-sm dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
                                    <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> Connect
                                </button>
                                <ul class="dropdown-menu dropdown-menu-end">
                                    <li>
                                        <a
                                            class="dropdown-item"
                                            href="{% url 'dcim:consoleport_connect' termination_a_id=object.pk termination_b_type='console-server-port' %}?return_url={{ object.get_absolute_url }}"
                                        >
                                            Console Server Port
                                        </a>
                                    </li>
                                    <li>
                                        <a
                                            class="dropdown-item"
                                            href="{% url 'dcim:consoleport_connect' termination_a_id=object.pk termination_b_type='front-port' %}?return_url={{ object.get_absolute_url }}"
                                        >
                                            Front Port
                                        </a>
                                    </li>
                                    <li>
                                        <a
                                            class="dropdown-item"
                                            href="{% url 'dcim:consoleport_connect' termination_a_id=object.pk termination_b_type='rear-port' %}?return_url={{ object.get_absolute_url }}"
                                        >
                                            Rear Port
                                        </a>
                                    </li>
                                </ul>
                            </div>
                        {% endif %}
                    </div>
                {% endif %}
            </div>
            </div>
            {% plugin_right_page object %}
        </div>
    </div>
    <div class="row">
        <div class="col col-md-12">
            {% plugin_full_width_page object %}
        </div>
    </div>
{% endblock %}
